package com.baidu.bridge.dto.mb;

import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class UserListResponse {
    private boolean success;
    private int status;
    private String code;
    private String requestId;
    private PageInfo page; // 分页信息


    // 分页信息内部类
    @Data
    public static class PageInfo {
        private int pageNo; // 页码
        private int pageSize; // 页大小
        private String order; // 排序方式
        private String orderBy; // 排序字段
        private int totalCount; // 总数
        private List<UserResult> result; // 用户列表

    }

    // 用户信息内部类（与 UserInfoResponse 中的 UserResult 一致）
    @Data
    public static class UserResult {
        private String id;
        private String name;
        private String email;
        private String mobilePhone;
        private String state; // "Active" or "Forbidden"
        private String organizationId;
        private String organizationName;
        private boolean needResetPassword;
        private String creator;
        private String createTime;
        private boolean passwordSetted;
        private List<RoleRecord> roleRecords; // 角色记录
        private Map<String, String> extendedAttributes; // 扩展属性
        private String accessKey;
        private String secretKey;



        // 角色记录内部类（根据文档中 roleRecords 字段定义）
        @Data
        public static class RoleRecord {
            private String id; // 角色ID
            private String name; // 角色名称
            private String organizationId; // 组织ID（如果为所有组织级角色）
            private String projectId; // 项目ID（如果为所有项目级角色）


        }
    }
}